﻿using System.ComponentModel.DataAnnotations;
using System;
using System.Collections.Generic;

namespace TyMES.Communication.Response
{
    public class UIResponse
    {
        public class FinishPassRecord
        {
            public string id { get; set; }
            public string name { get; set; }
            public string status { get; set; }
        }

        public class MaterialRecord
        {
            public string stationId { get; set; }
            public string materialName { get; set; }
            public string materialCode { get; set; }
            public string materialSN { get; set; }
        }

        public class ProcessDataRecord
        {
            public string processId { get; set; }
            public string processName { get; set; }
            public string paramName { get; set; }
            public string value { get; set; }
        }

        public class BatcInfo
        {
            public string station { get; set; }
            public string materialName { get; set; }
            public string consumption { get; set; }
            public string batchNumber { get; set; }
        }
        public class FinishAllData 
        {
            public List<FinishPassRecord> passRecords { get; set; }
            public List<MaterialRecord> materialRecords { get;set; }
            public List<ProcessDataRecord> processDataRecords { get; set; }
            public List<BatcInfo> batcInfoRecords { get; set; }
            public List<EssentialBOM> essentialBOMs { get; set; }

        }

        

        public class EssentialBOM
        {
            public string OperationCode { get; set; }
            public string AssemblyMaterialCode { get; set; }
            public string AssemblyMaterialName { get; set; }
            public string AssemblyRegex { get; set; }
        }
        public class ProductOrderUIInfo
        {
            public List<string> date { get; set; }
            public List<int> weekQuantity { get; set; }
            public List<int> weekPlan { get; set; }
            public string currentWeekOutput { get; set; }
            public string OrderOutput { get; set; }
            public string OrderPlanQuantity {  get; set; } 
            public List<StationInfo> stationDatas { get;set; }

        }

        public class ActualOutputAndPlan
        {
            public string OrderOutput { get; set; }
            public string OrderPlanQuantity { get; set; }
        }

        public class StationInfo{
            public string processId { get; set; }
            public string processName { get; set; }
            public string workOrder { get; set; }
            public string productionCount { get; set; }
        }
    }
}
